經過前面兩天桌面應用的學習,今天我們將踏入行動開發的全新領域!
基本上照著官方文件上的步驟就可以了。
首先下載並安裝最新版本的 Android Studio。這不僅是 Android 開發的標準 IDE,更重要的是它提供了 Tauri 所需的完整工具鏈。Android Studio 包含了 Android SDK、模擬器、偵錯工具等所有必要套件,是 Android 開發不可或缺的基礎。
安裝過程中請確保選擇「Standard」安裝選項,這會自動安裝大部分必要的套件。安裝完成後,建議先啟動一次 Android Studio,讓它完成初始化設定並下載任何缺失的套件。
JAVA_HOME
環境變數[System.Environment]::SetEnvironmentVariable("JAVA_HOME", "C:\Program Files\Android\Android Studio\jbr", "User")
接著要使用 Android Studio 的 SDK Manager 安裝 SDK,SDK Manager 可以從這裡打開:
要安裝的項目是這五個:
不過其實在剛剛安裝 Android Studio 的時候就已經裝好前 3 個,只剩下後 2 個還要再安裝 (都在 SDK Tools 頁籤中)。
勾選後,按下 Apply 按鈕,就會開始引導安裝,最後再次 Apply 就好了。
ANDROID_HOME
和 NDK_HOME
環境變數[System.Environment]::SetEnvironmentVariable("ANDROID_HOME", "$env:LocalAppData\Android\Sdk", "User")
$VERSION = Get-ChildItem -Name "$env:LocalAppData\Android\Sdk\ndk" | Select-Object -Last 1
[System.Environment]::SetEnvironmentVariable("NDK_HOME", "$env:LocalAppData\Android\Sdk\ndk\$VERSION", "User")
rustup target add aarch64-linux-android armv7-linux-androideabi i686-linux-android x86_64-linux-android
在開始這步驟之前,建議重開所有 terminal 以確保先前設定的環境變數都有順利更新。
在現有的 Tauri 專案中執行初始化命令:
npm run tauri android init
這個命令會執行多項重要操作:在 src-tauri
目錄下建立 gen/android
資料夾,包含完整的 Android 專案結構。它會自動產生 AndroidManifest.xml
、build.gradle
等 Android 開發必須的設定檔。
初始化過程中,Tauri 會分析你的專案設定,將 tauri.conf.json
中的應用程式資訊對應到 Android 專案中。包括應用程式名稱、版本號、圖示等都會自動設定。
如果各位是 Windows 系統,請記得要 開啟開發人員模式 !!!
如果沒開啟,等等執行
npm run tauri android dev
時就會看到一整排的Info Waiting for emulator to start...
在 terminal 執行這個指令 (第一次執行需要等一小段時間):
npm run tauri android dev
Tauri 會自動偵測可用的 Android 裝置,編譯應用程式並安裝到裝置上。這個過程包含了複雜的交叉編譯流程:前端 Vue 程式碼會被打包,Rust 程式碼會被編譯為 ARM 或 x86 原生程式庫,最後整合成完整的 APK 檔案。
如果各位能看到下面這個畫面,就代表成功了~
這個 Android Emulator 是沒有提供瀏覽器的開發工具 (DevTools) 的,這對於平時開發網頁習慣的人來說,實在是覺得很不自在。如果只是想要在前端 console.log
的話,問題不大,在 terminal 是可以看到的。
舉例來說,假如我在範例程式中加一行:
async function greet() {
// Learn more about Tauri commands at https://tauri.app/develop/calling-rust/
greetMsg.value = await invoke("greet", { name: name.value });
+ console.log("button clicked");
}
在我點擊按鈕之後,就可以在 terminal 看到:
09-18 14:47:17.269 7969 7969 I Tauri/Console: File: http://tauri.localhost/src/App.vue?t=1758206830148 - Line 12 - Msg: button clicked
但是,如果你還需要更多 DevTools 的功能,這邊提供各位一個方法:你可以打開 chrome 瀏覽器並進入 chrome://inspect/#devices
。稍等幾秒後,就會在下方的 Remote Target 看到這台 Android Emulator 了。
接著,點擊左下方「inspect」按鈕,就可以看到熟悉的令人安心的 DevTools 了~
不知道大家有沒有注意到,我們只是換一個指令而已。
我們的桌面應用程式碼幾乎不需要任何修改就能在 Android 上運行,這就是 Tauri 厲害的地方啊!Tauri 的跨平台抽象層確保了一致的開發體驗,無論是 Command 系統、事件處理還是狀態管理,都能無縫運行在不同平台上。
今天分享了如何建置手機應用程式的開發環境,並將先前的桌面應用程式轉換成手機應用程式 (Android)。
基礎篇到今天就結束了,接下來會進入核心篇,開始介紹 Tauri 核心的用法與觀念~